﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net;
using System.Text;
using System.Security.Cryptography;
using System.IO;
using OAuth;
using OAuth.Sina;
using OAuth.WangYi;
using OAuth.Sohu;
using OAuth.QQ;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            if (Request.QueryString["Type"] != null)
            {
                IOAuthMode Mode = (IOAuthMode)Session["OAuthMode"];
                labMsg.Text = string.Format("认证成功,OAuthToken={0}&OAuthTokenSecret={1}", Mode.GetOAuthToken().ParameterValue, Mode.GetOAuthTokenSecret().ParameterValue);
            }
        }
    }
    protected void imgBtnSina_Click(object sender, ImageClickEventArgs e)
    {
        SinaOAuthMode OAuthMode = new SinaOAuthMode();
        OAuthBase Base = new OAuthBase(new SinaOAuthRequestURL(), new SinaOAuthConfig(), OAuthMode);
        OAuthMode = (SinaOAuthMode)Base.RequestToken();
        string res = string.Format("{0}:{1}&{2}:{3}", OAuthMode.GetOAuthToken().ParameterName, OAuthMode.GetOAuthToken().ParameterValue, OAuthMode.GetOAuthTokenSecret().ParameterName, OAuthMode.GetOAuthTokenSecret().ParameterValue);
        labMsg.Text = res;
        string RequestOAuthTokenURL = Base.GetAccessTokenURL().ToString();
        Session["OAuthMode"] = OAuthMode;
        Page.ClientScript.RegisterStartupScript(GetType(), "W_CallBack", "<script language=\"javascript\" type=\"text/javascript\">imgBtnClick('" + RequestOAuthTokenURL + "')</script>");
    }
    protected void imgBtnWangYi_Click(object sender, ImageClickEventArgs e)
    {
        WangYiOAuthMode OAuthMode = new WangYiOAuthMode();
        OAuthBase Base = new OAuthBase(new WangYiOAuthRequestURL(), new WangYiOAuthConfig(), OAuthMode);
        OAuthMode = (WangYiOAuthMode)Base.RequestToken();
        string res = string.Format("{0}:{1}&{2}:{3}", OAuthMode.GetOAuthToken().ParameterName, OAuthMode.GetOAuthToken().ParameterValue, OAuthMode.GetOAuthTokenSecret().ParameterName, OAuthMode.GetOAuthTokenSecret().ParameterValue);
        labMsg.Text = res;
        string RequestOAuthTokenURL = Base.GetAccessTokenURL().ToString();
        Session["OAuthMode"] = OAuthMode;
        Page.ClientScript.RegisterStartupScript(GetType(), "W_CallBack", "<script language=\"javascript\" type=\"text/javascript\">imgBtnClick('" + RequestOAuthTokenURL + "')</script>");

    }
    protected void imgBtnSohu_Click(object sender, ImageClickEventArgs e)
    {
        SohuOAuthMode OAuthMode = new SohuOAuthMode();
        OAuthBase Base = new OAuthBase(new SohuOAuthRequestURL(), new SohuOAuthConfig(), OAuthMode);
        OAuthMode = (SohuOAuthMode)Base.RequestToken();
        string res = string.Format("{0}:{1}&{2}:{3}", OAuthMode.GetOAuthToken().ParameterName, OAuthMode.GetOAuthToken().ParameterValue, OAuthMode.GetOAuthTokenSecret().ParameterName, OAuthMode.GetOAuthTokenSecret().ParameterValue);
        labMsg.Text = res;
        string RequestOAuthTokenURL = Base.GetAccessTokenURL().ToString();
        Session["OAuthMode"] = OAuthMode;
        Page.ClientScript.RegisterStartupScript(GetType(), "W_CallBack", "<script language=\"javascript\" type=\"text/javascript\">imgBtnClick('" + RequestOAuthTokenURL + "')</script>");
    }
    protected void imgBtnQQ_Click(object sender, ImageClickEventArgs e)
    {
        QQOAuthMode OAuthMode = new QQOAuthMode();
        OAuthBase Base = new OAuthBase(new QQOAuthRequestURL(), new QQOAuthConfig(), OAuthMode);
        OAuthMode = (QQOAuthMode)Base.RequestToken();
        string res = string.Format("{0}:{1}&{2}:{3}", OAuthMode.GetOAuthToken().ParameterName, OAuthMode.GetOAuthToken().ParameterValue, OAuthMode.GetOAuthTokenSecret().ParameterName, OAuthMode.GetOAuthTokenSecret().ParameterValue);
        labMsg.Text = res;
        string RequestOAuthTokenURL = Base.GetAccessTokenURL().ToString();
        Session["OAuthMode"] = OAuthMode;
        Page.ClientScript.RegisterStartupScript(GetType(), "W_CallBack", "<script language=\"javascript\" type=\"text/javascript\">imgBtnClick('" + RequestOAuthTokenURL + "')</script>");
    }
}